import { h } from 'vue'

/**
 * 生成阿里云图标库的h函数节点
 * @param {string} iconClass 图标类名（如"icon-aliyun"）
 * @param {Object} options 图标配置（size, color, class等）
 * @returns {VNode} Vue虚拟节点
 */
export function renderIconFont(iconClass, options:Option = {}) {
  const {
    size = 16,    // 默认大小
    color,        // 颜色
    className = '', // 额外类名
    onClick       // 点击事件
  } = options

  // 创建SVG元素（阿里云图标基于symbol）
  return h(
    'svg',
    {
      class: `iconfont ${className}`,
      style: {
        width: `${size}px`,
        height: `${size}px`,
        margin:'4px 3px 0px 3px',
        ...(color ? { color } : {})
      },
      onClick,
      'aria-hidden': 'true'
    },
    [
      h('use', {
        'xlink:href': `#${iconClass}` // 关联阿里云图标symbol
      })
    ]
  )
}

interface Option {
    size?: number;
    color?: string;
    className?: string;
    onClick?: any;
}
    